package com.zmovie.framework.service;

import com.zmovie.framework.domain.Actor;
import com.zmovie.framework.domain.ActorMovie;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zmovie.framework.domain.dto.ActorGroupDTO;

import java.util.List;

/**
* @author lenovo
* @description 针对表【actor_movie】的数据库操作Service
* @createDate 2023-12-04 15:52:02
*/
public interface ActorMovieService extends IService<ActorMovie> {
    List<ActorMovie> listActorMovieByMovieId(Integer movieId);

    /**
     * 列出与电影关联的演员，根据角色分组
     * @param movieId 电影id
     */
    List<ActorGroupDTO> listActorByMovieIdGroupByRole(Integer movieId);
    List<Actor> listRelatedActorByMovieId(Integer movieId);

    /**
     * 列出未与电影关联的演员
     * @param movieId 电影id
     */
    List<Actor> listNotRelatedActorByMovieId(Integer movieId);

    /**
     * 电影主演
     * @param movieId 电影id
     */
    List<Actor> listProtagonist(Integer movieId);
}
